package com.moon.game.vos;

import java.io.Serializable;
import java.util.HashMap;
import java.util.List;

import com.moon.game.constants.GBaseObject;

/**
 * @description App内存印象
 * @author Ranger 作者 E-mail:haozi000005@163.com
 * @version 创建时间：2012-4-29 上午10:14:33
 */
public class PlayerVo extends GBaseObject{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1458278298791746243L;
	private String sid;
	private String id;
	private String name;
	private String passwd;
	private String tokenKey;
	private String tokenSecrect;
	private int level;
	private int sex;
	private int hp;
	private int mp;
	private int curHp;
	private int curMp;
	private int exp;
	private int money;
	private int gold;
	private int status;
	private int maxRoom;
	private int accessTime;
	private int createTime;
	private int loginTime;
	private int offlineTime;
	private int lastLoginTime;
	private int lastOfflineTime;
	private int banAccountTime;
	private int banChatTime;
	private int burden;
	private int location;
	private int safecode;
	private int defenseHot;//自身炎防
	private int defenseCold;//自身寒防
	private int attackHot; //自身炎攻
	private int attackCold;//自身寒攻
	private int charmValue;//魅力
	private int petYardCapacity;
	private List<Skill> skill;
	public static class Skill implements Serializable{
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;
		int skillId;
		int skillSite;
		public int getSkillId() {
			return skillId;
		}
		public void setSkillId(int skillId) {
			this.skillId = skillId;
		}
		public int getSkillSite() {
			return skillSite;
		}
		public void setSkillSite(int skillSite) {
			this.skillSite = skillSite;
		}
	}
	
	private List<UsedItem> usedItem;
	public static class UsedItem implements Serializable{
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;
		long id;// 道具id
		int itemId;
		int improveLevel;// 强化等级
		List<Integer> appendId;// 镶嵌宝石
		List<Integer> propertyId;// 特殊属性
		int currEndure;// 当前持久
		int defenseHotMin; // 最小炎防
		int defenseHotMax; // 最大炎防
		int defenseColdMin; // 最小寒防
		int defenseColdMax; // 最大寒防
		int attackHotMin; // 最小炎攻
		int attackHotMax; // 最大炎攻
		int attackColdMin; // 最小寒攻
		int attackColdMax; // 最大寒攻
		int needCharmValue; // 魅力值需求
		public int getDefenseHotMin() {
			return defenseHotMin;
		}
		public void setDefenseHotMin(int defenseHotMin) {
			this.defenseHotMin = defenseHotMin;
		}
		public int getDefenseHotMax() {
			return defenseHotMax;
		}
		public void setDefenseHotMax(int defenseHotMax) {
			this.defenseHotMax = defenseHotMax;
		}
		public int getDefenseColdMin() {
			return defenseColdMin;
		}
		public void setDefenseColdMin(int defenseColdMin) {
			this.defenseColdMin = defenseColdMin;
		}
		public int getDefenseColdMax() {
			return defenseColdMax;
		}
		public void setDefenseColdMax(int defenseColdMax) {
			this.defenseColdMax = defenseColdMax;
		}
		public int getAttackHotMin() {
			return attackHotMin;
		}
		public void setAttackHotMin(int attackHotMin) {
			this.attackHotMin = attackHotMin;
		}
		public int getAttackHotMax() {
			return attackHotMax;
		}
		public void setAttackHotMax(int attackHotMax) {
			this.attackHotMax = attackHotMax;
		}
		public int getAttackColdMin() {
			return attackColdMin;
		}
		public void setAttackColdMin(int attackColdMin) {
			this.attackColdMin = attackColdMin;
		}
		public int getAttackColdMax() {
			return attackColdMax;
		}
		public void setAttackColdMax(int attackColdMax) {
			this.attackColdMax = attackColdMax;
		}
		public int getNeedCharmValue() {
			return needCharmValue;
		}
		public void setNeedCharmValue(int needCharmValue) {
			this.needCharmValue = needCharmValue;
		}
		public long getId() {
			return id;
		}
		public void setId(long id) {
			this.id = id;
		}
		public int getItemId() {
			return itemId;
		}
		public void setItemId(int itemId) {
			this.itemId = itemId;
		}
		public int getImproveLevel() {
			return improveLevel;
		}
		public void setImproveLevel(int improveLevel) {
			this.improveLevel = improveLevel;
		}
		public List<Integer> getAppendId() {
			return appendId;
		}
		public void setAppendId(List<Integer> appendId) {
			this.appendId = appendId;
		}
		public List<Integer> getPropertyId() {
			return propertyId;
		}
		public void setPropertyId(List<Integer> propertyId) {
			this.propertyId = propertyId;
		}
		public int getCurrEndure() {
			return currEndure;
		}
		public void setCurrEndure(int currEndure) {
			this.currEndure = currEndure;
		}
	}
	
	private List<Tower> towerList;
	/**
	 * 孵蛋巢穴
	 *
	 */
	public static class Tower implements Serializable{
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;
		private int createTime;//铸造时间
		private int lastShowTime;//最后一次访问时间
		private int hierarchy;//巢穴等级，0凡兽,1仙兽,2神兽召唤巢穴
		private int towerId;//巢穴id
		private int endure;//持久
		private int currEndure;//当前持久
		private int animalId;//巢穴里面珍兽的id，如果没有则为0
		private int animalCalledTime;//珍兽进入巢穴时间
		private int incubationTimes = 0;//成功孵化次数
		private int startRentTime;//开始出租的时间
		private int rentTime;//出租时长
		private int lastRepariTime;//最后一次修复时间
		public int getLastRepariTime() {
			return lastRepariTime;
		}
		public void setLastRepariTime(int lastRepariTime) {
			this.lastRepariTime = lastRepariTime;
		}
		public int getRentTime() {
			return rentTime;
		}
		public void setRentTime(int rentTime) {
			this.rentTime = rentTime;
		}
		public int getStartRentTime() {
			return startRentTime;
		}
		public void setStartRentTime(int startRentTime) {
			this.startRentTime = startRentTime;
		}
		public int getCreateTime() {
			return createTime;
		}
		public void setCreateTime(int createTime) {
			this.createTime = createTime;
		}
		public int getLastShowTime() {
			return lastShowTime;
		}
		public void setLastShowTime(int lastShowTime) {
			this.lastShowTime = lastShowTime;
		}
		public int getHierarchy() {
			return hierarchy;
		}
		public void setHierarchy(int hierarchy) {
			this.hierarchy = hierarchy;
		}
		public int getTowerId() {
			return towerId;
		}
		public void setTowerId(int towerId) {
			this.towerId = towerId;
		}
		public int getEndure() {
			return endure;
		}
		public void setEndure(int endure) {
			this.endure = endure;
		}
		public int getCurrEndure() {
			return currEndure;
		}
		public void setCurrEndure(int currEndure) {
			this.currEndure = currEndure;
		}
		public int getAnimalId() {
			return animalId;
		}
		public void setAnimalId(int animalId) {
			this.animalId = animalId;
		}
		public int getAnimalCalledTime() {
			return animalCalledTime;
		}
		public void setAnimalCalledTime(int animalCalledTime) {
			this.animalCalledTime = animalCalledTime;
		}
		public int getIncubationTimes() {
			return incubationTimes;
		}
		public void setIncubationTimes(int incubationTimes) {
			this.incubationTimes = incubationTimes;
		}
	}
	
	private List<Pet> petList;
	
	/**宠物*/
	public static class Pet implements Serializable {
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;
		private int playerPetId;//人物宠物唯一id
		private int petId;//宠物资源id
		private String name;//名称
		private boolean possessed;//是否附身
		private int hierarchy;//是否附身
		private int curMaturity;//当前成长值
		private int maturity;//成长值满状态
		private int breedId;//孕育装备id
		private String breedName;//孕育装备名称
		private int sex;//宠物性别
		private String description;
		public String getDescription() {
			return description;
		}
		public void setDescription(String description) {
			this.description = description;
		}
		public int getPlayerPetId() {
			return playerPetId;
		}
		public void setPlayerPetId(int playerPetId) {
			this.playerPetId = playerPetId;
		}
		public int getPetId() {
			return petId;
		}
		public void setPetId(int petId) {
			this.petId = petId;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public boolean isPossessed() {
			return possessed;
		}
		public void setPossessed(boolean possessed) {
			this.possessed = possessed;
		}
		public int getHierarchy() {
			return hierarchy;
		}
		public void setHierarchy(int hierarchy) {
			this.hierarchy = hierarchy;
		}
		public int getCurMaturity() {
			return curMaturity;
		}
		public void setCurMaturity(int curMaturity) {
			this.curMaturity = curMaturity;
		}
		public int getMaturity() {
			return maturity;
		}
		public void setMaturity(int maturity) {
			this.maturity = maturity;
		}
		public int getBreedId() {
			return breedId;
		}
		public void setBreedId(int breedId) {
			this.breedId = breedId;
		}
		public String getBreedName() {
			return breedName;
		}
		public void setBreedName(String breedName) {
			this.breedName = breedName;
		}
		public int getSex() {
			return sex;
		}
		public void setSex(int sex) {
			this.sex = sex;
		}
	}
	
	public List<MyMission> dailyMissionList = null;//日常任务
	public List<MyMission> mainMissionList = null;//主线任务
	public static class MyMission implements Serializable{
		/**
		 * 
		 */
		private static final long serialVersionUID = 1L;
		private int missionId;
		private int statu = 0;//任务状态，0表示未完成，1完成
		private HashMap<Integer, Integer> monsterProcess;//打怪任务完成进度
		public HashMap<Integer, Integer> getMonsterProcess() {
			return monsterProcess;
		}
		public void setMonsterProcess(HashMap<Integer, Integer> monsterProcess) {
			this.monsterProcess = monsterProcess;
		}
		public int getMissionId() {
			return missionId;
		}
		public void setMissionId(int missionId) {
			this.missionId = missionId;
		}
		public int getStatu() {
			return statu;
		}
		public void setStatu(int statu) {
			this.statu = statu;
		}
	}
	
	/**礼包id列表*/
	private List<GiftVo> giftList;
	
	public String getSid() {
		return sid;
	}
	public void setSid(String sid) {
		this.sid = sid;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPasswd() {
		return passwd;
	}
	public void setPasswd(String passwd) {
		this.passwd = passwd;
	}
	public String getTokenKey() {
		return tokenKey;
	}
	public void setTokenKey(String tokenKey) {
		this.tokenKey = tokenKey;
	}
	public String getTokenSecrect() {
		return tokenSecrect;
	}
	public void setTokenSecrect(String tokenSecrect) {
		this.tokenSecrect = tokenSecrect;
	}
	public int getLevel() {
		return level;
	}
	public void setLevel(int level) {
		this.level = level;
	}
	public int getSex() {
		return sex;
	}
	public void setSex(int sex) {
		this.sex = sex;
	}
	public int getHp() {
		return hp;
	}
	public void setHp(int hp) {
		this.hp = hp;
	}
	public int getMp() {
		return mp;
	}
	public void setMp(int mp) {
		this.mp = mp;
	}
	public int getCurHp() {
		return curHp;
	}
	public void setCurHp(int curHp) {
		this.curHp = curHp;
	}
	public int getCurMp() {
		return curMp;
	}
	public void setCurMp(int curMp) {
		this.curMp = curMp;
	}
	public int getExp() {
		return exp;
	}
	public void setExp(int exp) {
		this.exp = exp;
	}
	public int getMoney() {
		return money;
	}
	public void setMoney(int money) {
		this.money = money;
	}
	public int getGold() {
		return gold;
	}
	public void setGold(int gold) {
		this.gold = gold;
	}
	public int getStatus() {
		return status;
	}
	public void setStatus(int status) {
		this.status = status;
	}
	public int getMaxRoom() {
		return maxRoom;
	}
	public void setMaxRoom(int maxRoom) {
		this.maxRoom = maxRoom;
	}
	public int getAccessTime() {
		return accessTime;
	}
	public void setAccessTime(int accessTime) {
		this.accessTime = accessTime;
	}
	public int getCreateTime() {
		return createTime;
	}
	public void setCreateTime(int createTime) {
		this.createTime = createTime;
	}
	public int getLoginTime() {
		return loginTime;
	}
	public void setLoginTime(int loginTime) {
		this.loginTime = loginTime;
	}
	public int getOfflineTime() {
		return offlineTime;
	}
	public void setOfflineTime(int offlineTime) {
		this.offlineTime = offlineTime;
	}
	public int getLastLoginTime() {
		return lastLoginTime;
	}
	public void setLastLoginTime(int lastLoginTime) {
		this.lastLoginTime = lastLoginTime;
	}
	public int getLastOfflineTime() {
		return lastOfflineTime;
	}
	public void setLastOfflineTime(int lastOfflineTime) {
		this.lastOfflineTime = lastOfflineTime;
	}
	public int getBanAccountTime() {
		return banAccountTime;
	}
	public void setBanAccountTime(int banAccountTime) {
		this.banAccountTime = banAccountTime;
	}
	public int getBanChatTime() {
		return banChatTime;
	}
	public void setBanChatTime(int banChatTime) {
		this.banChatTime = banChatTime;
	}
	public int getBurden() {
		return burden;
	}
	public void setBurden(int burden) {
		this.burden = burden;
	}
	public int getLocation() {
		return location;
	}
	public void setLocation(int location) {
		this.location = location;
	}
	public int getSafecode() {
		return safecode;
	}
	public void setSafecode(int safecode) {
		this.safecode = safecode;
	}
	public int getDefenseHot() {
		return defenseHot;
	}
	public void setDefenseHot(int defenseHot) {
		this.defenseHot = defenseHot;
	}
	public int getDefenseCold() {
		return defenseCold;
	}
	public void setDefenseCold(int defenseCold) {
		this.defenseCold = defenseCold;
	}
	public int getAttackHot() {
		return attackHot;
	}
	public void setAttackHot(int attackHot) {
		this.attackHot = attackHot;
	}
	public int getAttackCold() {
		return attackCold;
	}
	public void setAttackCold(int attackCold) {
		this.attackCold = attackCold;
	}
	public int getCharmValue() {
		return charmValue;
	}
	public void setCharmValue(int charmValue) {
		this.charmValue = charmValue;
	}
	public int getPetYardCapacity() {
		return petYardCapacity;
	}
	public void setPetYardCapacity(int petYardCapacity) {
		this.petYardCapacity = petYardCapacity;
	}
	public List<Skill> getSkill() {
		return skill;
	}
	public void setSkill(List<Skill> skill) {
		this.skill = skill;
	}
	public List<UsedItem> getUsedItem() {
		return usedItem;
	}
	public void setUsedItem(List<UsedItem> usedItem) {
		this.usedItem = usedItem;
	}
	public List<Tower> getTowerList() {
		return towerList;
	}
	public void setTowerList(List<Tower> towerList) {
		this.towerList = towerList;
	}
	public List<Pet> getPetList() {
		return petList;
	}
	public void setPetList(List<Pet> petList) {
		this.petList = petList;
	}
	public List<MyMission> getDailyMissionList() {
		return dailyMissionList;
	}
	public void setDailyMissionList(List<MyMission> dailyMissionList) {
		this.dailyMissionList = dailyMissionList;
	}
	public List<MyMission> getMainMissionList() {
		return mainMissionList;
	}
	public void setMainMissionList(List<MyMission> mainMissionList) {
		this.mainMissionList = mainMissionList;
	}
	public List<GiftVo> getGiftList() {
		return giftList;
	}
	public void setGiftList(List<GiftVo> giftList) {
		this.giftList = giftList;
	}
}	
